/**********************************************
*  Classes:   NodeProperty
*  Desc:      Abstract class that defines a 
*             rendering property for a geometry
*             node. Properties include textures,
*             materials etc.
*  Author:    Vaios Kalpias-Ilias (C) 2008-2009
***********************************************/

#ifndef NODEPROPERTY_H
#define NODEPROPERTY_H

#include "SmartPointer.h"

class NodeProperty
{
public:

	typedef enum property_t
	{
		PROPERTY_TEXTURE,
		PROPERTY_MATERIAL
	} PropertyType;

	NodeProperty(){}
	virtual ~NodeProperty(){}
	virtual PropertyType GetType() const = 0;	
};

SmartPointer(NodeProperty);

#endif